#pragma once

#include <windows.h>
#include "ILCommon.h"
#include "D3DHelper.h"
#include "AssetImporter.h"

class CMesh
{
public:
	CMesh(ID3D11Device* pDevice);
protected:
	ID3D11Device* m_pDevice;
	ID3D11InputLayout* m_pInputLayout;
	ID3D11Buffer* m_pVertexBuffer;
};

class CAiMesh : public CMesh
{
public:
	CAiMesh(ID3D11Device* pDevice);
	~CAiMesh();

	bool LoadMesh(const std::string& Filename);

protected:
	virtual bool InitFromScene(const aiScene* pScene, const std::string& Filename) = 0;
	virtual void Clear() = 0;
};

